package com.fishingwithme.infrastructure.mapper;

import com.fishingwithme.infrastructure.dtos.AgrPpDto;
import com.fishingwithme.infrastructure.dtos.CreditLevelRuleDto;
import com.fishingwithme.infrastructure.dtos.CreditRuleDto;
import com.fishingwithme.infrastructure.dtos.FeedbackListDto;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

@Mapper
public interface SettingsMapper {

    /**
     * 获取所有等级规则
     * @return 等级规则列表
     */
    List<CreditLevelRuleDto> selectAllLevelRules();

    /**
     * 获取所有积分规则
     * @return 积分规则列表
     */
    List<CreditRuleDto> selectAllCreditRules();

    /**
     * 分页查询反馈列表
     * @param page 分页对象
     * @return 反馈列表分页结果
     */
    IPage<FeedbackListDto> selectFeedbackPage(IPage<FeedbackListDto> page);

    /**
     * 根据类型查询协议
     * @param type 协议类型
     * @return 协议列表
     */
    List<AgrPpDto> selectAgrByType(@Param("type") String type);
}